1) Field of the Invention
The present invention relates to a microprocessor that executes a program.
2) Description of the Related Art
In recent years, the open system of computers, in which source codes of hardware and operating system (OS) of a personal computer (PC) for general users are disclosed, has come into wide use. The end users are allowed to modify or improve the operating program, thereby obtaining their desired programs.
On the other hand, it is necessary to protect the copyright of information handled by an application program and the copyright of the program itself. To this end, a mechanism for security protection of programs, that is, a mechanism for protection against tampering with programs is required. It is assumed that an attack on application programs would be made by tampering with the OS program. By mere modification to the OS to guard against the attack on the application programs, it is difficult, therefore, to protect computers from intrusion by third parties. A solution to this problem requires hardware that provides program security protection. The reason for this is that modification to hardware is extremely difficult to end users as compared with the OS modification.
As hardware that satisfies such requirement, especially a microprocessor of this kind, there has already been proposed a tamper-resistant processor (see Japanese Patent Application Laid-open No. 2003-108442 and Lee et. al, “Architectural Support for Copy and Tamper Resistant Software”, Computer Architecture News, 28(5), p. 168). Such a processor has a function of encrypting a program and information used in the program in a multi-task environment so as to prevent third parties from obtaining the program and information, and from tampering with the program.
In an environment where the OS is not reliable, however, it is impossible only with the tamperproof processor to prevent a malicious third party from tampering with the OS program to attack the application program.